package com.ruoyi.system.domain;

import com.ruoyi.system.domain.vo.ProgressVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 客户管理对象 customers
 * 
 * @author zzbird
 * @date 2023-11-14
 */
@ApiModel(value = "CustomersEntity", description = "客户实体")
public class Customers extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 客户ID */
    @Excel(name = "客户序号", cellType = Excel.ColumnType.NUMERIC, prompt = "客户编号")
    @ApiModelProperty("客户ID")
    private Long customerId;

    /** 客户名称 */

    @Excel(name = "客户名称")
    @ApiModelProperty("客户名称")
    private String customerName;

    @Excel(name = "公司名称")
    @ApiModelProperty("公司名称")
    private String companyName;

    /** 客户身份证号  --暂不需要 */
//    @Excel(name = "客户身份证号")
    @ApiModelProperty("客户身份证号")
    private String customerIdCard;

    /** 手机号 */
    @Excel(name = "手机号")
    @ApiModelProperty("手机号")
    private String phoneNumber;

    /** 是否删除 */
    @ApiModelProperty("是否删除")
    private Integer isDeleted;

    /** 备注 */
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    private String remarks;

    /** 部门ID */
    @ApiModelProperty("部门ID")
    private Long deptId;

    @ApiModelProperty("用户ID")
    private Long userId;

    @ApiModelProperty("平台ID")
    private Long platformId;

    @ApiModelProperty("平台名称")
    private String platformName;

    @ApiModelProperty("当前进度")
    private Integer currentProgress;

    @ApiModelProperty("客户展示进度")
    private Integer fakeProgress;

    @ApiModelProperty("当前客户名称")
    private String currentName;

    @ApiModelProperty("创建开始时间")
    private String createTimeStart;

    @ApiModelProperty("创建结束时间")
    private String createTimeEnd;

    @ApiModelProperty("更新开始时间")
    private String updateTimeStart;

    @ApiModelProperty("更新结束时间")
    private String updateTimeEnd;

    private List<Customers> customersDetailList;


    public void setCustomerId(Long customerId) 
    {
        this.customerId = customerId;
    }

    public Long getCustomerId() 
    {
        return customerId;
    }
    public void setCustomerName(String customerName) 
    {
        this.customerName = customerName;
    }

    public String getCustomerName() 
    {
        return customerName;
    }
    public void setCustomerIdCard(String customerIdCard) 
    {
        this.customerIdCard = customerIdCard;
    }

    public String getCustomerIdCard() 
    {
        return customerIdCard;
    }
    public void setPhoneNumber(String phoneNumber) 
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() 
    {
        return phoneNumber;
    }
    public void setIsDeleted(Integer isDeleted) 
    {
        this.isDeleted = isDeleted;
    }

    public Integer getIsDeleted() 
    {
        return isDeleted;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }

    public Long getPlatformId() {
        return platformId;
    }

    public void setPlatformId(Long platformId) {
        this.platformId = platformId;
    }

    public String getPlatformName() {
        return platformName;
    }

    public void setPlatformName(String platformName) {
        this.platformName = platformName;
    }

    public Integer getCurrentProgress() {
        return currentProgress;
    }

    public void setCurrentProgress(Integer currentProgress) {
        this.currentProgress = currentProgress;
    }

    public String getCurrentName() {
        return currentName;
    }

    public void setCurrentName(String currentName) {
        this.currentName = currentName;
    }

    public String getCreateTimeStart() {
        return createTimeStart;
    }

    public void setCreateTimeStart(String createTimeStart) {
        this.createTimeStart = createTimeStart;
    }

    public String getCreateTimeEnd() {
        return createTimeEnd;
    }

    public void setCreateTimeEnd(String createTimeEnd) {
        this.createTimeEnd = createTimeEnd;
    }

    public String getUpdateTimeStart() {
        return updateTimeStart;
    }

    public void setUpdateTimeStart(String updateTimeStart) {
        this.updateTimeStart = updateTimeStart;
    }

    public String getUpdateTimeEnd() {
        return updateTimeEnd;
    }

    public void setUpdateTimeEnd(String updateTimeEnd) {
        this.updateTimeEnd = updateTimeEnd;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Integer getFakeProgress() {
        return fakeProgress;
    }

    public void setFakeProgress(Integer fakeProgress) {
        this.fakeProgress = fakeProgress;
    }

    public List<Customers> getCustomersDetailList() {
        return customersDetailList;
    }

    public void setCustomersDetailList(List<Customers> customersDetailList) {
        this.customersDetailList = customersDetailList;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("customerId", getCustomerId())
            .append("customerName", getCustomerName())
            .append("customerIdCard", getCustomerIdCard())
            .append("phoneNumber", getPhoneNumber())
            .append("isDeleted", getIsDeleted())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("remarks", getRemarks())
            .append("deptId", getDeptId())
            .toString();
    }
}
